Central plant control system with subplant rank generator

ABSTRACT

A controller for a central plant having subplants operating to produce resources consumed by a building. The controller includes a processing circuit including a processor and memory storing instructions executed by the processor. The memory includes an offline rank generator that receives historical subplant allocation data and generates subplant ranks based on the historical subplant allocation data, each of the subplant ranks is associated with one of the subplants and defines a priority of each subplant with respect to production of a resource relative to other subplants that produce the resource. The memory also includes a high level optimizer that uses the subplant ranks associated with each of the subplants to determine resource allocation of the subplants according to the subplant ranks. The processing circuit is operates the subplants according to the resource allocation.

BACKGROUND

The present disclosure relates generally to the operation of a centralplant for serving building thermal energy loads. The present disclosurerelates more particularly to systems and methods for optimizing theoperation of one or more subplants of a central plant according toranks.

A central plant may consume resources from a utility (e.g., electricity,water, natural gas, etc.) to heat or cool working fluid (e.g., water,glycol, etc.) that is circulated to the building or stored for later useto provide heating or cooling for the building. Fluid conduits typicallydeliver the heated or chilled fluid to air handlers located on therooftop of the building or to individual floors or zones of thebuilding. The air handlers push air past heat exchangers (e.g., heatingcoils or cooling coils) through which the working fluid flows to provideheating or cooling for the air. The working fluid then returns to thecentral plant to receive further heating or cooling and the cyclecontinues.

In one aspect, an operating engineer of the central plant operating HVACdevices allocates resources to HVAC devices according to a preference.For example, the operating engineer utilizes an air cooled chiller atits full capacity before operating a heat recovery chiller, thenoperates the heat recovery chiller if additional chilled water resourceis needed. However, such preference of operating the central plant maybe cost inefficient. In addition, the process of configuring the centralplant to operate according to the preference can be tedious andtime-consuming.

SUMMARY

One implementation of the present disclosure is a controller for acentral plant having subplants that operate to produce resourcesconsumed by a building. The controller includes a processing circuitcomprising a processor and memory storing instructions executed by theprocessor. The memory includes an offline rank generator configured toreceive historical subplant allocation data and generate subplant ranksbased on the historical subplant allocation data. The subplant ranks areassociated with the subplants and define a priority of each subplantwith respect to production of a resource relative to other subplantsthat produce the resource. The memory also includes a high leveloptimizer configured to use the subplant ranks associated with each ofthe subplants to determine resource allocation of the subplantsaccording to the subplant ranks. The processing circuit is configured tooperate the subplants according to the resource allocation.

In some embodiments, the offline rank generator includes an allocationrank generator configured to receive the historical subplant allocationdata from the high level optimizer and determine, based on thehistorical subplant allocation data, the subplant ranks.

In some embodiments, the offline rank generator includes an AI rankgenerator configured to receive the historical subplant allocation datafrom the high level optimizer and building data to generate a modelusing the historical subplant allocation data and the building data.

In some embodiments, the model is used to generate future subplant loadallocations for use in determining the subplant ranks.

In some embodiments, the model generated by the AI rank generator is aneural network.

In some embodiments, the offline rank generator includes a rankquestionnaire module configured to generate a series of questions to auser associated with operational characteristics of the central plant.

In some embodiments, the rank questionnaire module is configured toreceive user responses from the user to the series of questions. Theuser responses are used to determine the subplant ranks.

Another implementation of the present disclosure is a method ofcontrolling a central plant having subplants that operate to produceresources consumed by a building. The method involves determiningsubplant ranks based on operational characteristics of the centralplant. The subplant ranks are associated with the subplants and define apriority of each subplant with respect to production of a resourcerelative to other subplants that produce the resource. The method alsoinvolves determining resource allocation of the subplants according tothe subplant ranks and operating the subplants according to the resourceallocation.

In some embodiments, determining the subplant ranks based on operationaldata of the central plant further involves obtaining user data inresponse to a series of questions defining the operationalcharacteristics of the central plant and determining the subplant ranksbased on the user data.

In some embodiments, determining the subplant ranks based on operationaldata of the central plant further involves obtaining historical subplantload allocation data defining a historical resource allocation of thesubplants from a previous prediction window and determining the subplantranks based on the historical subplant load allocation data.

In some embodiments, determining the subplant ranks based on operationaldata of the central plant further involves obtaining historical subplantload allocation data define historical resource allocation of thesubplants from a previous prediction window, obtaining building data,generating a model based on the historical subplant load allocation dataand the building data, and determining the subplant ranks based on anoutput of the model.

In some embodiments, generating the model based on the historicalsubplant load allocation data and the building data involves generatinga neural network.

Yet another implementation of the present disclosure is a controller fora central plant having subplants that operate to produce resourcesconsumed by a building. The controller includes a processing circuithaving a processor and memory storing instructions executed by theprocessor. The memory includes an offline rank generator configured toreceive user data and generate subplant ranks based on the user data.Each of the subplant ranks is associated with one of the subplants anddefines a priority of each subplant with respect to production of aresource relative to other subplants that produce the resource. Thememory also includes a high level optimizer configured to use thesubplant ranks associated with each of the subplants to determineresource allocation of the subplants according to the subplant ranks.The processing circuit is configured to operate the subplants accordingto the resource allocation.

In some embodiments, the offline rank generator includes a rankquestionnaire module configured to generate a series of questions to auser associated with operational characteristics of the central plant.

In some embodiments, the rank questionnaire module is configured toreceive user responses from the user to the series of questions. Theuser response are used to determine the operational characteristics ofthe central plant.

In some embodiments, the user responses to the series of questions isused to determine the subplant ranks.

In some embodiments, the offline rank generator is configured to receivehistorical subplant allocation data and generate the subplant ranksbased on the historical subplant allocation data.

In some embodiments, the offline rank generator includes an allocationrank generator configured to receive the historical subplant allocationdata from the high level optimizer and determine, based on thehistorical subplant allocation data, the subplant ranks.

In some embodiments, the offline rank generator includes an AI rankgenerator configured to receive the historical subplant allocation datafrom the high level optimizer and building data to generate a modelusing the historical subplant allocation data and the building data.

In some embodiments, the model is used to generate future subplant loadallocations for use in determining the subplant ranks.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a drawing of a building equipped with an HVAC system,according to some embodiments.

FIG. 2 is a schematic of a waterside system, which can be used as partof the HVAC system of FIG. 1, according to some embodiments.

FIG. 3 is a block diagram illustrating an airside system, which can beused as part of the HVAC system of FIG. 1, according to someembodiments.

FIG. 4 is a block diagram of a central plant controller which can beused to control the HVAC system of FIG. 1, the waterside system of FIG.2, and/or the airside system of FIG. 3, according to some embodiments.

FIG. 5 is a block diagram illustrating an offline rank generatorincluded in the central plant control of FIG. 4 which can be used togenerate subplant, according to some embodiments.

FIG. 6 is a block diagram illustrating a rank questionnaire moduleincluded in the offline rank generator of FIG. 5, according to someembodiments.

FIG. 7 is a flowchart illustrating a process of administering a seriesof questions and using user responses to the series of questions togenerate subplant ranks, according to some embodiments.

FIG. 8 is a flowchart illustrating a series of questions that can beadministered as part of the process illustrated in FIG. 7, according tosome embodiments.

FIG. 9 is a flowchart illustrating a process of determining subplantranks using historical subplant allocations, according to someembodiments.

FIG. 10 is a block diagram illustrating an AI rank generator included inthe offline rank generator of FIG. 5, according to some embodiments.

FIG. 11 is an unadjusted allocation diagram which can be determinedusing a model generated by the AI rank generator of FIG. 10, accordingto some embodiments.

FIG. 12 is an adjusted allocation diagram which can be determined by theAI rank generator of FIG. 10, according to some embodiments.

FIG. 13 is a flowchart illustrating a process of generating model andusing the model to determine subplant ranks which can be performed bythe AI rank generator of FIG. 10, according to some embodiments.

DETAILED DESCRIPTION

Overview

Referring generally to the FIGURES, disclosed herein are systems andmethods for operating the HVAC system based on ranks.

Various embodiments of a system, a method, and a non-transitory computerreadable medium for operating an energy plant based on ranks aredisclosed herein. In one aspect, the system obtains rank identifiersindicating ranks of a plurality of heat, ventilation, and airconditioning (HVAC) devices of the energy plant. The ranks may bepredetermined, determined by a user (e.g., operating engineer), orautomatically assigned. In one aspect, the system determines resourceallocation of the plurality of HVAC devices according to the ranks ofthe plurality of HVAC devices, and determines a set of operatingparameters of the plurality of HVAC devices based on the determinedresource allocation. The system may operate the plurality of HVACdevices according to the set of operating parameters.

Advantageously, the disclosed system and method enable detection ofpatterns of ranks or priorities of HVAC devices. In one aspect, HVACdevices operated by an operating engineer according to his/herpreference on priorities of HVAC devices may be cost inefficient.Moreover, an operating engineer may not be aware of such preference onthe priorities of HVAC devices. The disclosed system and method enabledetection of any patterns of ranks or priorities of HVAC devices fromprior resource consumption, and modification of ranks of HVAC devices toimprove operating efficiency.

Building and HVAC System

Referring now to FIGS. 1-3, an exemplary HVAC system in which thesystems and methods of the present disclosure can be implemented areshown, according to an exemplary embodiment. While the systems andmethods of the present disclosure are described primarily in the contextof a building HVAC system, it should be understood that the controlstrategies described herein may be generally applicable to any type ofcontrol system.

Referring particularly to FIG. 1, a perspective view of a building 10 isshown. Building 10 is served by a building management system (BMS). ABMS is, in general, a system of devices configured to control, monitor,and manage equipment in or around a building or building area. A BMS caninclude, for example, an HVAC system, a security system, a lightingsystem, a fire alerting system, any other system that is capable ofmanaging building functions or devices, or any combination thereof.

The BMS that serves building 10 includes an HVAC system 100. HVAC system100 can include a plurality of HVAC devices (e.g., heaters, chillers,air handling units, pumps, fans, thermal energy storage, etc.)configured to provide heating, cooling, ventilation, or other servicesfor building 10. For example, HVAC system 100 is shown to include awaterside system 120 and an airside system 130. Waterside system 120 canprovide a heated or chilled fluid to an air handling unit of airsidesystem 130. Airside system 130 can use the heated or chilled fluid toheat or cool an airflow provided to building 10. An exemplary watersidesystem and airside system which can be used in HVAC system 100 aredescribed in greater detail with reference to FIGS. 2-3.

HVAC system 100 is shown to include a chiller 102, a boiler 104, and arooftop air handling unit (AHU) 106. Waterside system 120 can use boiler104 and chiller 102 to heat or cool a working fluid (e.g., water,glycol, etc.) and can circulate the working fluid to AHU 106. In variousembodiments, the HVAC devices of waterside system 120 can be located inor around building 10 (as shown in FIG. 1) or at an offsite locationsuch as a central plant (e.g., a chiller plant, a steam plant, a heatplant, etc.). The working fluid can be heated in boiler 104 or cooled inchiller 102, depending on whether heating or cooling is required inbuilding 10. Boiler 104 can add heat to the circulated fluid, forexample, by burning a combustible material (e.g., natural gas) or usingan electric heating element. Chiller 102 can place the circulated fluidin a heat exchange relationship with another fluid (e.g., a refrigerant)in a heat exchanger (e.g., an evaporator) to absorb heat from thecirculated fluid. The working fluid from chiller 102 and/or boiler 104can be transported to AHU 106 via piping 108.

AHU 106 can place the working fluid in a heat exchange relationship withan airflow passing through AHU 106 (e.g., via one or more stages ofcooling coils and/or heating coils). The airflow can be, for example,outside air, return air from within building 10, or a combination ofboth. AHU 106 can transfer heat between the airflow and the workingfluid to provide heating or cooling for the airflow. For example, AHU106 can include one or more fans or blowers configured to pass theairflow over or through a heat exchanger containing the working fluid.The working fluid can then return to chiller 102 or boiler 104 viapiping 110.

Airside system 130 can deliver the airflow supplied by AHU 106 (i.e.,the supply airflow) to building 10 via air supply ducts 112 and canprovide return air from building 10 to AHU 106 via air return ducts 114.In some embodiments, airside system 130 includes multiple variable airvolume (VAV) units 116. For example, airside system 130 is shown toinclude a separate VAV unit 116 on each floor or zone of building 10.VAV units 116 can include dampers or other flow control elements thatcan be operated to control an amount of the supply airflow provided toindividual zones of building 10. In other embodiments, airside system130 delivers the supply airflow into one or more zones of building 10(e.g., via supply ducts 112) without using intermediate VAV units 116 orother flow control elements. AHU 106 can include various sensors (e.g.,temperature sensors, pressure sensors, etc.) configured to measureattributes of the supply airflow. AHU 106 can receive input from sensorslocated within AHU 106 and/or within the building zone and can adjustthe flow rate, temperature, or other attributes of the supply airflowthrough AHU 106 to achieve set-point conditions for the building zone.

Referring now to FIG. 2, a block diagram of a waterside system 200 isshown, according to an exemplary embodiment. In various embodiments,waterside system 200 can supplement or replace waterside system 120 inHVAC system 100 or can be implemented separate from HVAC system 100.When implemented in HVAC system 100, waterside system 200 can include asubset of the HVAC devices in HVAC system 100 (e.g., boiler 104, chiller102, pumps, valves, etc.) and can operate to supply a heated or chilledfluid to AHU 106. The HVAC devices of waterside system 200 can belocated within building 10 (e.g., as components of waterside system 120)or at an offsite location such as a central plant.

In FIG. 2, waterside system 200 is shown as a central plant having aplurality of subplants 202-212. Subplants 202-212 are shown to include aheater subplant 202, a heat recovery chiller subplant 204, a chillersubplant 206, a cooling tower subplant 208, a hot thermal energy storage(TES) subplant 210, and a cold thermal energy storage (TES) subplant212. Subplants 202-212 consume resources (e.g., water, natural gas,electricity, etc.) from utilities to serve the thermal energy loads(e.g., hot water, cold water, heating, cooling, etc.) of a building orcampus. For example, heater subplant 202 can be configured to heat waterin a hot water loop 214 that circulates the hot water between heatersubplant 202 and building 10. Chiller subplant 206 can be configured tochill water in a cold water loop 216 that circulates the cold waterbetween chiller subplant 206 and the building 10. Heat recovery chillersubplant 204 can be configured to transfer heat from cold water loop 216to hot water loop 214 to provide additional heating for the hot waterand additional cooling for the cold water. Condenser water loop 218 canabsorb heat from the cold water in chiller subplant 206 and reject theabsorbed heat in cooling tower subplant 208 or transfer the absorbedheat to hot water loop 214. Hot TES subplant 210 and cold TES subplant212 can store hot and cold thermal energy, respectively, for subsequentuse.

Hot water loop 214 and cold water loop 216 can deliver the heated and/orchilled water to air handlers located on the rooftop of building 10(e.g., AHU 106) or to individual floors or zones of building 10 (e.g.,VAV units 116). The air handlers push air past heat exchangers (e.g.,heating coils or cooling coils) through which the water flows to provideheating or cooling for the air. The heated or cooled air can bedelivered to individual zones of building 10 to serve the thermal energyloads of building 10. The water then returns to subplants 202-212 toreceive further heating or cooling.

Although subplants 202-212 are shown and described as heating andcooling water for circulation to a building, it is understood that anyother type of working fluid (e.g., glycol, CO2, etc.) can be used inplace of or in addition to water to serve the thermal energy loads. Inother embodiments, subplants 202-212 can provide heating and/or coolingdirectly to the building or campus without requiring an intermediateheat transfer fluid. These and other variations to waterside system 200are within the teachings of the present invention.

Each of subplants 202-212 can include a variety of equipment configuredto facilitate the functions of the subplant. For example, heatersubplant 202 is shown to include a plurality of heating elements 220(e.g., boilers, electric heaters, etc.) configured to add heat to thehot water in hot water loop 214. Heater subplant 202 is also shown toinclude several pumps 222 and 224 configured to circulate the hot waterin hot water loop 214 and to control the flow rate of the hot waterthrough individual heating elements 220. Chiller subplant 206 is shownto include a plurality of chillers 232 configured to remove heat fromthe cold water in cold water loop 216. Chiller subplant 206 is alsoshown to include several pumps 234 and 236 configured to circulate thecold water in cold water loop 216 and to control the flow rate of thecold water through individual chillers 232.

Heat recovery chiller subplant 204 is shown to include a plurality ofheat recovery heat exchangers 226 (e.g., refrigeration circuits)configured to transfer heat from cold water loop 216 to hot water loop214. Heat recovery chiller subplant 204 is also shown to include severalpumps 228 and 230 configured to circulate the hot water and/or coldwater through heat recovery heat exchangers 226 and to control the flowrate of the water through individual heat recovery heat exchangers 226.Cooling tower subplant 208 is shown to include a plurality of coolingtowers 238 configured to remove heat from the condenser water incondenser water loop 218. Cooling tower subplant 208 is also shown toinclude several pumps 240 configured to circulate the condenser water incondenser water loop 218 and to control the flow rate of the condenserwater through individual cooling towers 238.

Hot TES subplant 210 is shown to include a hot TES tank 242 configuredto store the hot water for later use. Hot TES subplant 210 can alsoinclude one or more pumps or valves configured to control the flow rateof the hot water into or out of hot TES tank 242. Cold TES subplant 212is shown to include cold TES tanks 244 configured to store the coldwater for later use. Cold TES subplant 212 can also include one or morepumps or valves configured to control the flow rate of the cold waterinto or out of cold TES tanks 244.

In some embodiments, one or more of the pumps in waterside system 200(e.g., pumps 222, 224, 228, 230, 234, 236, and/or 240) or pipelines inwaterside system 200 include an isolation valve associated therewith.Isolation valves can be integrated with the pumps or positioned upstreamor downstream of the pumps to control the fluid flows in watersidesystem 200. In various embodiments, waterside system 200 can includemore, fewer, or different types of devices and/or subplants based on theparticular configuration of waterside system 200 and the types of loadsserved by waterside system 200.

Referring now to FIG. 3, a block diagram of an airside system 300 isshown, according to an exemplary embodiment. In various embodiments,airside system 300 can supplement or replace airside system 130 in HVACsystem 100 or can be implemented separate from HVAC system 100. Whenimplemented in HVAC system 100, airside system 300 can include a subsetof the HVAC devices in HVAC system 100 (e.g., AHU 106, VAV units 116,ducts 112-114, fans, dampers, etc.) and can be located in or aroundbuilding 10. Airside system 300 can operate to heat or cool an airflowprovided to building 10 using a heated or chilled fluid provided bywaterside system 200.

In FIG. 3, airside system 300 is shown to include an economizer-type airhandling unit (AHU) 302. Economizer-type AHUs vary the amount of outsideair and return air used by the air handling unit for heating or cooling.For example, AHU 302 can receive return air 304 from building zone 306via return air duct 308 and can deliver supply air 310 to building zone306 via supply air duct 312. In some embodiments, AHU 302 is a rooftopunit located on the roof of building 10 (e.g., AHU 106 as shown inFIG. 1) or otherwise positioned to receive return air 304 and outsideair 314. AHU 302 can be configured to operate an exhaust air damper 316,mixing damper 318, and outside air damper 320 to control an amount ofoutside air 314 and return air 304 that combine to form supply air 310.Any return air 304 that does not pass through mixing damper 318 can beexhausted from AHU 302 through exhaust air damper 316 as exhaust air322.

Each of dampers 316-320 can be operated by an actuator. For example,exhaust air damper 316 can be operated by actuator 324, mixing damper318 can be operated by actuator 326, and outside air damper 320 can beoperated by actuator 328. Actuators 324-328 can communicate with an AHUcontroller 330 via a communications link 332. Actuators 324-328 canreceive control signals from AHU controller 330 and can provide feedbacksignals to AHU controller 330. Feedback signals can include, forexample, an indication of a current actuator or damper position, anamount of torque or force exerted by the actuator, diagnosticinformation (e.g., results of diagnostic tests performed by actuators324-328), status information, commissioning information, configurationsettings, calibration data, and/or other types of information or datathat can be collected, stored, or used by actuators 324-328. AHUcontroller 330 can be an economizer controller configured to use one ormore control algorithms (e.g., state-based algorithms, extremum seekingcontrol (ESC) algorithms, proportional-integral (PI) control algorithms,proportional-integral-derivative (PID) control algorithms, modelpredictive control (MPC) algorithms, feedback control algorithms, etc.)to control actuators 324-328.

Still referring to FIG. 3, AHU 302 is shown to include a cooling coil334, a heating coil 336, and a fan 338 positioned within supply air duct312. Fan 338 can be configured to force supply air 310 through coolingcoil 334 and/or heating coil 336 and provide supply air 310 to buildingzone 306. AHU controller 330 can communicate with fan 338 viacommunications link 340 to control a flow rate of supply air 310. Insome embodiments, AHU controller 330 controls an amount of heating orcooling applied to supply air 310 by modulating a speed of fan 338.

Cooling coil 334 can receive a chilled fluid from waterside system 200(e.g., from cold water loop 216) via piping 342 and can return thechilled fluid to waterside system 200 via piping 344. Valve 346 can bepositioned along piping 342 or piping 344 to control a flow rate of thechilled fluid through cooling coil 334. In some embodiments, coolingcoil 334 includes multiple stages of cooling coils that can beindependently activated and deactivated (e.g., by AHU controller 330, byBMS controller 366, etc.) to modulate an amount of cooling applied tosupply air 310.

Heating coil 336 can receive a heated fluid from waterside system 200(e.g., from hot water loop 214) via piping 348 and can return the heatedfluid to waterside system 200 via piping 350. Valve 352 can bepositioned along piping 348 or piping 350 to control a flow rate of theheated fluid through heating coil 336. In some embodiments, heating coil336 includes multiple stages of heating coils that can be independentlyactivated and deactivated (e.g., by AHU controller 330, BMS controller366, etc.) to modulate an amount of heating applied to supply air 310.

Each of valves 346 and 352 can be controlled by an actuator. Forexample, valve 346 can be controlled by actuator 354 and valve 352 canbe controlled by actuator 356. Actuators 354-356 can communicate withAHU controller 330 via communications links 358-360. Actuators 354-356can receive control signals from AHU controller 330 and can providefeedback signals to AHU controller 330. In some embodiments, AHUcontroller 330 receives a measurement of the supply air temperature froma temperature sensor 362 positioned in supply air duct 312 (e.g.,downstream of cooling coil 334 and/or heating coil 336). AHU controller330 can also receive a measurement of the temperature of building zone306 from a temperature sensor 364 located in building zone 306.

In some embodiments, AHU controller 330 operates valves 346 and 352 viaactuators 354-356 to modulate an amount of heating or cooling providedto supply air 310 (e.g., to achieve a set-point temperature for supplyair 310 or to maintain the temperature of supply air 310 within aset-point temperature range). The positions of valves 346 and 352 affectthe amount of heating or cooling provided to supply air 310 by heatingcoil 336 or cooling coil 334 and may correlate with the amount of energyconsumed to achieve a desired supply air temperature. AHU controller 330can control the temperature of supply air 310 and/or building zone 306by activating or deactivating coils 334-336, adjusting a speed of fan338, or a combination thereof.

Still referring to FIG. 3, airside system 300 is shown to include a BMScontroller 366 and a client device 368. BMS controller 366 can includeone or more computer systems (e.g., servers, supervisory controllers,subsystem controllers, etc.) that serve as system level controllers,application or data servers, head nodes, or master controllers forairside system 300, waterside system 200, HVAC system 100, and/or othercontrollable systems that serve building 10. BMS controller 366 cancommunicate with multiple downstream building systems or subsystems(e.g., HVAC system 100, a security system, a lighting system, watersidesystem 200, etc.) via a communications link 370 according to like ordisparate protocols (e.g., LON, BACnet, etc.). In various embodiments,AHU controller 330 and BMS controller 366 can be separate (as shown inFIG. 3) or integrated. The AHU controller 330 may be a hardware module,a software module configured for execution by a processor of BMScontroller 366, or both.

In some embodiments, AHU controller 330 receives information (e.g.,commands, set points, operating boundaries, etc.) from BMS controller366 and provides information (e.g., temperature measurements, valve oractuator positions, operating statuses, diagnostics, etc.) to BMScontroller 366. For example, AHU controller 330 can provide BMScontroller 366 with temperature measurements from temperature sensors362-364, equipment on/off states, equipment operating capacities, and/orany other information that can be used by BMS controller 366 to monitoror control a variable state or condition within building zone 306.

Client device 368 can include one or more human-machine interfaces orclient interfaces (e.g., graphical user interfaces, reportinginterfaces, text-based computer interfaces, client-facing web services,web servers that provide pages to web clients, etc.) for controlling,viewing, or otherwise interacting with HVAC system 100, its subsystems,and/or devices. Client device 368 can be a computer workstation, aclient terminal, a remote or local interface, or any other type of userinterface device. Client device 368 can be a stationary terminal or amobile device. For example, client device 368 can be a desktop computer,a computer server with a user interface, a laptop computer, a tablet, asmartphone, a PDA, or any other type of mobile or non-mobile device.Client device 368 can communicate with BMS controller 366 and/or AHUcontroller 330 via communications link 372.

Example Climate Control System

Referring to FIG. 4, illustrated is a block diagram of a central plantcontroller 410, according to some embodiments. In some embodiments, thecentral plant controller 410 is part of the HVAC system 100 of FIG. 1.Alternatively, the central plant controller 410 is coupled to the HVACsystem 100 through a communication link. In some embodiments, thecentral plant controller 410 monitors and controls subplants of thewaterside system 200 of FIG. 2. The central plant controller 410 may bethe AHU controller 330 of FIG. 3, or a combination of the BMS controller366 and the AHU controller 330 of FIG. 3. In one configuration, thecentral plant controller 410 includes a communications interface 415 anda processing circuit 420. These components operate together to determinea set of operating parameters for operating various HVAC devices of theHVAC system 100 (or subplants within a central plant). In someembodiments, the central plant controller 410 includes additional,fewer, or different components than shown in FIG. 4.

The communications interface 415 facilitates communication of thecentral plant controller 410 with other HVAC devices (e.g., heaters,chillers, air handling units, pumps, fans, thermal energy storage, etc.)or subplants within a central plant. The communications interface 415can be or include wired or wireless communications interfaces (e.g.,jacks, antennas, transmitters, receivers, transceivers, wire terminals,etc.). In various embodiments, communications via the communicationsinterface 415 can be direct (e.g., local wired or wirelesscommunications) or via a communications network (e.g., a WAN, theInternet, a cellular network, etc.). For example, the communicationsinterface 415 can include an Ethernet/USB/RS232/RS485 card and port forsending and receiving data through a network. In another example, thecommunications interface 415 can include a Wi-Fi transceiver forcommunicating via a wireless communications network. In another example,the communications interface 415 can include cellular or mobile phonecommunication transceivers.

The processing circuit 420 is a hardware circuit executing instructionsto determine a set of parameters for operating HVAC devices of the HVACsystem 100 (or subplants within a central plant). In one embodiment, theprocessing circuit 420 includes a processor 425, and memory 430 storinginstructions (or program code) executable by the processor 425. Thememory 430 may be any non-transitory computer readable medium. In oneembodiment, the instructions executed by the processor 425 cause theprocessor 425 to form software modules including an offline rankgenerator 428, a high level optimizer 440 and a low level optimizer 450.The offline rank generator 428 may determine subplant ranks 452 of theplurality of subplants of the energy plant, where the subplant ranks 452indicate a priority of each subplant with respect to production of aresource relative to other subplants that produce the resource. In someembodiments, offline rank generator 428 provides the subplant ranks 452to high level optimizer 440. The high level optimizer 440 may determinehow to distribute resources (e.g., thermal energy loads) acrosssubplants (e.g., chillers, heaters, valves, etc.) for each time step inthe prediction window, for example, to minimize the cost of energyconsumed by the subplants according to the ranks. The low leveloptimizer 450 may determine how to operate each subplant according tothe resources (e.g., thermal energy loads) determined by the high leveloptimizer 440. In other embodiments, the processor 425 and the memory430 may be omitted, and the offline rank generator 428, the high leveloptimizer 440, and the low level optimizer 450 may be implemented ashardware modules by a reconfigurable circuit (e.g., field programmablegate array (FPGA)), an application specific integrated circuit (ASIC),or any circuitries, or a combination of software modules and hardwaremodules.

Memory 430 is also shown to include an offline rank generator 428configured to generate subplant ranks for each subplant included in acentral using user input and/or central plant data for use by high leveloptimizer 440, according to some embodiments. In some embodiments,offline rank generator 428 is configured to administer a series ofquestions to a user associated with the operating procedures of thecentral plant. In some such embodiments, offline rank generator uses theuser responses to each of the questions in the series of questions inorder to determine subplant ranks. In some embodiments, offline rankgenerator 428 is configured to determine subplant ranks based onprevious subplant allocations. For example, offline rank generator 428may receive historical subplant allocations determined by a previoushigh level optimization process and generates subplant ranks based onthe historical subplant allocations. In some embodiments, offline rankgenerator 428 is configured to receive building environmental data(e.g., temperature, relative humidity, time of day, etc.) and historicalsubplant allocations to generate a model (e.g., a trained neural networkmodel, etc.) of the subplant allocations. Each of these features will bedescribed in greater detail below in reference to FIGS. 5-12.

The offline rank generator 428 is a component that generates rankidentifiers indicating ranks of subplants. In one aspect, the subplantsare operated according to a preference of an operating engineer orsubplant ranks. The subplant ranks may be time dependent. For example,during a first time period (e.g., weekday), a first subplant supplyingor consuming a first type of resource is prioritized over a secondsubplant supplying or consuming a second type of resource, and, during asecond time period (e.g., weekend), the second subplant is prioritizedover the first subplant. Resources may be consumed or allocated to adevice with a higher priority (e.g., lower rank). If there is anyremaining resource to be consumed or allocated, the remaining resourcemay be consumed or allocated to a device with a subsequent subplantrank.

In one approach, the ranks of subplants are manually determined by aperson or an operating engineer. The offline rank generator 428 maygenerate and present a user interface allowing a user to specify ranksof a priority of each subplant with respect to production of a resourcerelative to other subplants that produce the resource. The userinterface may allow a user to input time varying ranks for differentsubplants. According to input received through the user interface, theoffline rank generator 428 may generate rank identifiers indicating theranks and store the rank identifiers.

In one approach, the offline rank generator 428 automatically determinesranks of subplants. The offline rank generator 428 may analyze the priorresource consumption and detect a pattern of different prioritiesassigned to the subplants based on the prior resource consumption. Inone approach, the offline rank generator 428 obtains resourceconsumption data indicating prior resource consumption of the subplants,for example, operated by an operating engineer, by the central plantcontroller 410, or by any component. The offline rank generator 428 mayautomatically determine ranks of the subplants conforming to the priorresource consumption. In some embodiments, the offline rank generator428 obtains resource allocation or consumption for multiple timeperiods, and for each time period, determines ranks of the subplants.The offline rank generator 428 may generate rank identifiers indicatingthe ranks and store the rank identifiers.

In one implementation, the high level optimizer 440 determines resources(e.g., thermal energy loads) of HVAC devices of the HVAC system 100 (orsubplants within a central plant), and generates the Q allocation data442 indicating the determined resources. The high level optimizer 440may provide the Q allocation data 442 to the low level optimizer 450. Inreturn, the high level optimizer 440 may receive, from the low leveloptimizer 450, operating parameter and power estimation data 448indicating a set of operating parameters to operate HVAC devices of theHVAC system 100 (or subplants within a central plant), predicted powerconsumptions when operating the HVAC system 100 according to the set ofoperating parameters, or both. Based on the operating parameter andpower estimation data 448, the high level optimizer 440 can operate theHVAC system 100 accordingly or generate different Q allocation data 442for further optimization. The high level optimizer 440 and the low leveloptimizer 450 may operate together online in real time, or offline atdifferent times.

In one or more embodiments, the high level optimizer 440 includes anasset allocator 445. The asset allocator 445 may operate to distributeor allocate resources (e.g., distribute thermal energy load) accordingto the ranks of the subplants indicated by the rank identifiers. In oneaspect, ranks indicate which subplant to produce a particular resourcewhen there are multiple different subplants that produce that resource.For example, a chiller subplant and a heat recovery chiller can bothproduce chilled water or cold thermal energy, and one of the chillersubplant and the heat recovery chiller with a lower rank can produce thechilled water or the cold thermal energy first. In some embodiments, thehigh level optimizer 440 includes additional, fewer, or differentcomponents than shown in FIG. 4.

The asset allocator 445 determines a distribution of thermal energyloads of the HVAC devices of the HVAC system 100 (or subplants within acentral plant) based on rank identifiers. In some embodiments, the assetallocator 445 prioritizes resource allocations to subplants associatedwith lower ranks over subplants associated with higher ranks. In oneaspect, given predicted resources (e.g., thermal energy load) andutility rate information received through a user input or automaticallydetermined by a scheduler, the asset allocator 445 may determine adistribution of resources (e.g., thermal energy load) according to theranks of the subplants. For example, the asset allocator 445 allocatesresources to a subplant having a lower rank than another subplant, andallocates a part or all of the remaining resources to the othersubplant. In some embodiments, the asset allocator 445 changes oradjusts ranks of the subplants to minimize resource consumption oroperation cost of the central plant. The asset allocator 445 maygenerate the Q allocation data 442 indicating the allocated resources ofdifferent subplants within the central plant and provide the Qallocation data 442 to the low level optimizer 450.

In some embodiments, the asset allocator 445 determines resourceallocation according to dependencies of resources. In one aspect, theasset allocator 445 classifies, for each subplant, each resourceproduced or consumed by the subplant as either an independent resourceor a dependent resource. An independent resource is a resource with anamount that is controllable, for example, as a decision variable foroperating a central plant, where a dependent resource is a resource withan amount depending on an amount of one or more independent resources ordependent resources. The asset allocator 445 may classify a resourceproduced or consumed by a subplant as an independent resource based onschematic connections of the subplants, ranks, or a combination of them.In some examples, certain resources are predetermined as independentresources. If a subplant produces or consumes a first resource and asecond resource, the first resource may be an independent resource thatis controllable as a decision variable for operating a central plant,and the second resource may be a dependent resource depending on theamount of resource allocated to the first resource.

In some embodiments, the asset allocator 445 determines resourceallocation among subplants that produce or consume independentresources, then determines resource allocation among subplants thatproduce or consume dependent resources. In one approach, the assetallocator 445 determines resource allocation among subplants thatproduce or consume independent resources according to the ranks (forexample, from lowest rank to highest rank). The asset allocator 445 mayrelax constraints of resource allocation among subplants that produce orconsume dependent resources, then determine resource allocation amongsubplants that produce or consume independent resources according to therelaxed constraints. For example, the asset allocator 445 may setresource allocation among subplants that produce or consume dependentresources as minimum values, then determine resource allocation amongsubplants that produce or consume independent resources, for example, ina sequence from the lowest rank to the highest rank. After determiningresource allocation among subplants that produce or consume independentresources, the asset allocator 445 may determine resource allocationamong subplants that produce or consume dependent resources according tothe determined resource allocation of independent resources and theranks (from lowest rank to highest rank). The asset allocator 445 maydetermine whether all resources satisfy corresponding target constraintsor are successfully allocated to subplants. If not all resources areallocated to subplants, the asset allocator 445 may iteratively modifyresource allocation among subplants that produce or consume independentresources and resource allocation among subplants that produce orconsume dependent resources, until all resources are allocated tosubplants. If all resources are allocated to subplants, the assetallocator 445 may generate the Q allocation data 442 specifying theallocated resources, and provide the Q allocation data 442 to the lowlevel optimizer 450.

In some embodiments, the high level optimization performed by the highlevel optimizer 440 is the same or similar to the high leveloptimization process described in U.S. patent application Ser. No.14/634,609 filed Feb. 27, 2015 and titled “High Level Central PlantOptimization,” and U.S. patent application Ser. No. 15/473,496 filedMar. 29, 2017 and titled “Central Plant With Asset Allocator,” which areincorporated by reference herein.

The low level optimizer 450 receives the Q allocation data 442 from thehigh level optimizer 440, and determines operating parameters (e.g.,capacities) of the HVAC devices of the HVAC system 100 (or subplantswithin a central plant). In one or more embodiments, the low leveloptimizer 450 includes an equipment allocator 460, a state predictor470, and a power estimator 480. Together, these components operate todetermine a set of operating parameters, for example, rendering reducedpower consumption of the HVAC system 100 for a given set of resources(e.g., thermal energy loads) indicated by the Q allocation data 442, andgenerate operating parameter data indicating the determined set ofoperating parameters. In some embodiments, the low level optimizer 450includes different, more, or fewer components, or includes components indifferent arrangements than shown in FIG. 4.

In one configuration, the equipment allocator 460 receives the Qallocation data 442 from the high level optimizer 440, and generatescandidate operating parameter data 462 indicating a set of candidateoperating parameters of HVAC devices of the HVAC system 100 (orsubplants within a central plant) according to resource allocationspecified by the Q allocation data 442. The state predictor 470 receivesthe candidate operating parameter data 462 and predicts thermodynamicstates of the HVAC system 100 at various locations for the set ofcandidate operating parameters. The state predictor 470 generates statedata 474 indicating the predicted thermodynamic states, and provides thestate data 474 to the power estimator 480. The power estimator 480predicts, based on the state data 474, total power consumed by the HVACsystem 100 operating according to the set of candidate operatingparameters, and generates the power estimation data 482 indicating thepredicted power consumption. The equipment allocator 460 may repeat theprocess with different sets of candidate operating parameters to obtainpredicted power consumptions of the HVAC system 100 operating accordingto different sets of candidate operating parameters, and select a set ofoperating parameters rendering lower power consumption. The equipmentallocator 460 may generate the operating parameter and power estimationdata 448 indicating (i) the selected set of operating parameters and(ii) predicted power consumption of the power plant when operatingaccording to the selected set of operating parameters, and provide theoperating parameter and power estimation data 448 to the high leveloptimizer 440.

Memory 430 is also shown to include an offline rank generator 428configured to generate subplant ranks for each subplant included in acentral using user input and/or central plant data for use by high leveloptimizer 440, according to some embodiments. In some embodiments,offline rank generator 428 is configured to administer a series ofquestions to a user associated with the operating procedures of thecentral plant. In some such embodiments, offline rank generator uses theuser responses to each of the questions in the series of questions inorder to determine subplant ranks. In some embodiments, offline rankgenerator 428 is configured to determine subplant ranks based onprevious subplant allocations. For example, offline rank generator 428may receive historical subplant allocations determined by a previoushigh level optimization process and generates subplant ranks based onthe historical subplant allocations. In some embodiments, offline rankgenerator 428 is configured to receive building environmental data(e.g., temperature, relative humidity, time of day, etc.) and historicalsubplant allocations to generate a model (e.g., a trained neural networkmodel, etc.) of the subplant allocations. Each of these features will bedescribed in greater detail below in reference to FIGS. 5-12.

Offline Rank Generator

Referring now to FIG. 5, a block diagram illustrating the offline rankgenerator 428 and modules included therein as implemented in centralplant controller 410 is shown, according to some embodiments. Offlinerank generator 428 is shown to include a rank questionnaire module 502,an allocation rank generator 504, and an AI rank generator 506 eachconfigured to generate a subplant rank for each subplant included in thecentral plant which central plant controller 410 controls, according tosome embodiments. It should be understood that the embodiment of offlinerank generator 428 including rank questionnaire module 502, allocationrank generator 504, and AI rank generator 506 illustrated in FIG. 5 isnot intended to be limiting. Offline rank generator 428 may include anycombination of rank questionnaire module 502, allocation rank generator504, and AI rank generator 506 for use in determining subplant ranks.For example, offline rank generator 428 may only include AI rankgenerator 506 in order to generate subplant ranks. In another example,offline rank generator 428 may include rank questionnaire module 502 andallocation rank generator 504 in order to generate subplant ranks.

Rank questionnaire module 502 is shown to communicate with a user device503 via communications interface 415, according to some embodiments. Insome embodiments, rank questionnaire module 502 is configured toadminister a series of questions relating to operational procedures,preferences, trends, etc. of the central plant to a user associated withuser device 503. In some embodiments, a user provides a user response toeach question to rank questionnaire module 502 via communicationsinterface 415 using user device 503. In some embodiments, rankquestionnaire module 502 uses the user responses in order to extractoperational data relating to the operational preferences of the centralplant. In some embodiments, the rank questionnaire module 502 uses theextracted operational data to determine a subplant rank for eachsubplant in a central plant.

In some embodiments, the rank questionnaire module 502 generates andpresents a user interface via communications interface 415 allowing auser to answer the series of questions with respect to the operatingconditions of the central plant. In some embodiments, the rankquestionnaire module 502 is accessed via user device 503. User device503 may be any device configured to facilitate communication between auser of user device 503 and central plant controller 410. For example,user device 503 may be a computer, a terminal, a mobile device, acontrol panel in communication with central plant controller 410 viacommunications interface 415. In some embodiments, the questionsincluded in the series of questions are dynamically generated based onanswers provided by the user to previous questions. For example,subsequent questions following a question requesting the user toidentify the type of subplant (e.g., chiller subplant, cooling towersubplant, etc.) may depend the type of subplant the user inputs. As aresult of identifying the type of subplant as a chiller subplant in theprevious question, the next question administered may ask the user toidentify a number of subplant devices included in the chiller subplant.In some embodiments, the order of questions begins with generalquestions (e.g., questions about the plant as a whole) and proceeds tospecific questions (e.g., questions about individual devices that makeup each subplant included in the plant). For example, a first questionmay ask the user if the plant is operated differently depending onseason (e.g., spring, summer, fall, winter) while the last question mayask the user to identify which device (e.g., a chiller) is loaded firstduring a particular time period for a particular subplant (e.g., achiller subplant).

Still referring to FIG. 5, offline rank generator 428 is shown toinclude an allocation rank generator 504 configured to analyzehistorical subplant allocations to determine a subplant rank for eachsubplant included in a central plant based on the historical subplantallocations, according to some embodiments. In some embodiments,allocation rank generator 504 receives historical subplant allocationsfrom high level optimizer 440. In some embodiments, the historicalsubplant allocation received by allocation rank generator includestime-series data as determined by a previous high level optimizationprocess. In some embodiments, allocation rank generator 504 receivesdevice data including equipment dispatch data, setpoint data, powerconsumption data, etc. for the one or more devices included in eachsubplant from equipment allocator 460. In some such embodiments,allocation rank generator 504 analyzes the device data in order todetermine a device rank for each device included in each subplant foruse in a low level optimization process.

Offline rank generator 428 is also shown to include an AI rank generator506 configured to receive building environment data, historical subplantallocations, and/or subplant constraints to generate a trained model ofsubplant allocations. In some embodiments, the building environment dataconsists of total loads, season (e.g., time of year), relative humidityRH, time and temperature of one or more spaces T. In some embodiments,the AI rank generator 506 is in communication with devices 505 viacommunications interface 415 in order to collect one or more subplantconstraints (e.g., maximum capacity to produce a resource, minimumturndown value of the subplant, etc.). In some such embodiments, devices505 includes one or more subplants and/or devices included in the one ormore subplants that are controlled by central plant controller 410. Insome embodiments, the trained model generated by AI rank generator 506is a train neural network model. In some embodiments, the trained modelgenerated by AI rank generator 506 is used to determine a subplant rankfor each subplant included in a central plant. The subplant ranksgenerated by AI rank generator 506 may be transmitted to high leveloptimizer 440 for use in a high level optimization process to determinesubplant allocations. In some embodiments, AI rank generator 506 usesthe generated model to determine subplant allocations for use by lowlevel optimizer 450 in a low level optimization process.

Determining Subplant Ranks Using User Input

Referring now to FIG. 6, a block diagram illustrating the rankquestionnaire module 502 and modules included therein is shown,according to some embodiments. As previously understood, rankquestionnaire module 502 is configured to administer a series ofquestions associated with operational preferences of the central plantto a user. The rank questionnaire module 502 is configured to receiveuser responses from a user. In some embodiments, a user is an operatorof the central plant in which the central plant controller 410 isimplemented. In some embodiments, the rank questionnaire module 502analyzes the user responses to extract operational data of the subplantsincluded in the central plant.

Rank questionnaire module 502 is shown to include a question generator602 configured to administer a series of questions to a user. In someembodiments, the question generator 602 administers the series ofquestions to the user via communications interface 415. In someembodiments, the question generator 602 is configured to dynamicallygenerate questions based on a user response to a previous question. Insome embodiments, as will be described in greater detail with referenceto FIG. 7, question generator 602 receives a data request indicatingthat more operational data is needed for a response analyzer 604 tofully define the operation of a central plant. In some embodiments,question generator 602 administers a question to user when a datarequest is received from response analyzer 604.

Response analyzer 604 is shown to receive one or more user responsesentered by a user in response to a question administered by questiongenerator 602, according to some embodiments. In some embodiments,response analyzer 604 receives the user responses from a user viacommunications interface 415. In some embodiments, as will be describedin greater detail with reference to FIG. 7, response analyzer 604 isconfigured to analyze each user response and extract operational dataassociated with the user response. Response analyzer 604 is configuredto output the operational data extracted from each user response to aquestionnaire rank generator module 606 for use in determining asubplant rank based on the user responses for each subplant included ina central plant. Response analyzer 604 is also shown to output a datarequest to question generator 602, according to some embodiments. Insome embodiments, the data request is a signal transmitted to questiongenerator 602 indicating additional operational data is needed to fullydefine the operational characteristics of each subplant included in thecentral plant. In some embodiments, the data request transmitted from toquestion generator 602 indicates what data and/or information is neededby response analyzer 604. In some such embodiments, question generator602 administers a question corresponding to the data request. Forexample, response analyzer 604 may receive a user response to a previousquestion indicating that a central plant includes three subplants. Theresponse analyzer 604 may transmit a data request to question generatorindicating that the type of subplants is needed to fully define theoperation of the central plant. As a result, question generator 602 mayadminister a question asking the user to identify a type of subplant foreach of the three subplants included in the previous user response.

Referring now to FIG. 7, a process 700 for administering a questionnaireto a user to collect operational data associated with the subplantsincluded in a central plant and determining a subplant rank for each ofthe subplants included in the central plant based on the operationaldata is shown, according to some embodiments. The process 700 can beperformed by rank questionnaire module 502 and components includedtherein, according to some embodiments. Process 700 can be continuouslyand/or occasionally performed to update subplant ranks. For example,process 700 may be performed every hour to update subplant ranks.

The process 700 is shown to include administering a question relating tothe operational characteristics, preferences, etc. of the central plant(step 702), according to some embodiments. As will be described ingreater detail with reference to FIG. 8, a specific questionadministered in step 702 may depend on the history one or more previousquestions administered in a question series. For example, a question atthe beginning of a question series may inquire about broad operationalcharacteristics of the central plant operation (e.g., how many subplantsare included in the central plant) while a question administered laterin the question series may ask about operational characteristics ofindividual devices that make up each subplant in the central plant. Insome embodiments, step 702 is performed by question generator 602.

Process 700 is shown to include receiving a user response to thequestion administered in step 702 (step 704), according to someembodiments. In some embodiments, the user response received in step 704contains operational data and/or characteristics. For example, aresponse in step 704 may include an order of operational preference ofthe devices included in a subplant. In some embodiments, step 704 isperformed by response analyzer 604. Process 700 is also shown to involveextracting operational data from the user responses received in step 704(step 706). For example, in response to a question inquiring about thecentral plant operating differently based on time of day, a user mayrespond with a response indicating which subplants are prioritized basedon time of day. As a result, the operational data extracted from theuser response may include the operational preferences of subplants basedon time of day. In some embodiments, step 706 includes extractingoperational data of each subplant and/or the devices included in eachsubplant in order fully define how the user prefers to operate thecentral plant, each subplant, and/or each device included in eachsubplant.

Process 700 is shown to include deciding if the operational data foreach subplant and/or each device included in each subplant of a centralplant fully defines each subplant and/or device (step 708). In someembodiments, each subplant included in a central plant is consideredfully defined when the response analyzer 604 receives operationalcharacteristics for each subplant to define operational preferences foreach subplant over a time period defined by a prediction window. Forexample, a central plant including a first chiller subplant and a secondchiller subplant may be considered fully defined by the rankquestionnaire module 502 when the rank questionnaire is able todetermine the order of operational preferences (e.g., allocating a loadto the first chiller subplant first during one or more particular timesteps of the prediction window).

When it is determined that the operation of each subplant is not fullydefined, process 700 is shown to involve transmitting a data requestindicating more information is needed from a user to define theoperation of each subplant (step 710), according to some embodiments. Insome embodiments, step 710 involves response analyzer 604 transmittingthe data request to question generator 602. In some embodiments, step710 involves transmitting a data request indicating a specific type ofdata needed from a user. For example, the data request may indicate thatthe type of one or more subplants is needed to be identified by the userbased on a previous response to a question. In some embodiments, process700 involves performing step 702 after the data request is transmittedin step 710.

When it is determined that operation of each subplant is fully defined,process 700 is shown to involve transmitting the operational data (step712), according to some embodiments. In some embodiments, step 712involves response analyzer 604 transmitting the operational data toquestionnaire rank generator module 606.

Process 700 is shown to involve the determining a subplant rank for eachsubplant included in a central plant (step 714), according to someembodiments. In some embodiments, step 714 involves determining subplantranks for each subplant based on the transmitted operational data. Insome embodiments, step 714 involves determining a subplant rank for eachsubplant included in a central plant for each time step in a predictionwindow. In some embodiments, step 714 is performed by questionnaire rankgenerator module 606.

Process 700 is shown to involve transmitting the subplant ranks for usein high level optimization processes (step 716), according to someembodiments. In some embodiments, step 716 involves questionnaire rankgenerator module 606 transmitting the subplant ranks to high leveloptimizer 440.

Referring now to FIG. 8, a flowchart illustrating a series of questions800 as can be administered to a user is shown, according to someembodiments. In some embodiments, the series of questions 800 isadministered to a user by rank questionnaire module 502 while performingprocess 700. More specifically, in some embodiments, each questionincluded in the series of questions 800 can administered to the user atstep 702 of process 700 and the user response to each of the questionsincluded in the series of questions 800 can be received at step 704.

The content and order of each question within the series of questions800 presented in the embodiment illustrated in FIG. 8 is not intended tobe limiting. The content and order of each question within the series ofquestions 800 may be configurable depending on operator and/or userpreference. As previously understood, in some embodiments, the series ofquestions 800 may begin by presenting general questions associated withthe central plant as a whole and end with specific questions associatedwith the individual devices. Question 802 is shown to ask the user ifthe plant is run differently depending on a season, according to someembodiments. For example, a user may answer “yes” to question 802 if theplant operates with free cooling during a colder season (e.g., fall,winter) and operates a chiller during a warmer season (e.g., spring,summer). The response to question 802 impacts the subsequent questionspresented and/or order of subsequent questions presented to the user,according to some embodiments.

Following a response of “yes” to question 802, the series of questions800 proceeds with question 804 relating to clarification of the seasons,according to some embodiments. At question 804, the user is asked toidentify the number of seasons in a year as observed by the operation ofthe plant, according to an exemplary embodiment. In some embodiments,the number of seasons identified is the number of seasons that affectthe operation of the plant. For example, a user of a plant that operatessimilarly in spring and summer but differently in the fall may provide aresponse of “two” to question 804 due to the two different operations ofthe plant. In some embodiments, question 804 involves asking the user toidentify specific date ranges in year for which the one or more seasonsare observed. For example, a user may identify a “warm” season operationrunning from April 1-September 30 and a “cold” season operation runningfrom October 1-March 31.

In some embodiments, the responses to questions 802 and 804 allow rankquestionnaire module 502 to determine if more than one set of subplantranks is required depending on the seasonal operation. For example, if auser identifies that the central plant observes two seasons in question804, then rank questionnaire module 502 determines that two sets ofsubplant ranks are to be generated (i.e., a first set of subplant ranksfor the first season and a second set of subplant ranks for the secondseason).

The series of questions 800 begins to ask questions relating to subplantspecifics at question 806, according to some embodiments. In someembodiments, at question 806, the user is asked to identify how manysubplants exist in the central plant. In some embodiments, the questionis asked for the user to identify a number of similar subplants. Forexample, a central plant having two chiller subplants would beidentified as two separate subplants. In some embodiments, the responseto question 806 is used by the rank questionnaire module 502 todetermine the number of subplant ranks are to be generated. For example,if a user responds to question 806 with an answer of “three subplants,”then rank questionnaire module 502 may determine that the subplant rankswill range from a value of one to a value of three based on the centralplant having three subplants. In some embodiments, question 806 involvesasking the user to identify a name for each subplant. For example, inresponse to question 806, a user may identify “chiller subplant A” and“chiller subplant B.”

Question 808 asks the user to identify the number of devices included ineach subplant, according to an exemplary embodiment. In someembodiments, question 808 involves asking the user to identify a namefor each device included in each subplant. In some embodiments, question808 is repeated based on the number of subplants identified in question806. For example, if a user identifies “two subplants” as a response toquestion 806, then question 808 may repeat twice (i.e., a firstoccurrence asking the user to identify the number of devices included ina first subplant and a second occurrence asking the user to identify thenumber of devices included in a second subplant).

At question 810, the user is asked to input the order of daytimeoperational prioritization for each device identified in question 808for each subplant identified in question 806. For example, a user mayidentify that, for a chiller subplant consisting of a first chillerdevice and a second chiller device, the first chiller device isprioritized first for operation during daytime hours. In someembodiments, question 810 asks the user to list in order the devicesthat are loaded up. For example, a user may identify that, for a chillersubplant consisting of a first chiller device and a second chillerdevice, the first chiller device is loaded up first and the secondchiller device is loaded up second. In some embodiments, question 810allows the user to customize the time period for which the userconsiders daytime hours. For example, a user may identify that thedaytime hours observed by the central plant includes the hours of 7:00am-7:00 pm.

At question 812, the user is asked to input the order of nighttimeoperation prioritization for each device identified in question 808 foreach subplant identified in question 806. For example, a user mayidentify that, for a chiller subplant consisting of a first chiller anda second chiller device, the second chiller device is prioritized firstfor operation during nighttime hours. In some embodiments, question 812asks the user to list in order the devices that are loaded up. Forexample, a user may identify that, for a chiller subplant consisting ofa first chiller device and a second chiller device, the second chillerdevice is loaded up first and the second chiller device is loaded upsecond. In some embodiments, question 812 allows the user to customizethe time period for which the user considers nighttime hours. Forexample, a user may identify that the nighttime hours observed by thecentral plant includes the hours of 7:00 pm-7:00 am.

Determining Subplant Ranks Based on Historical Allocations

Referring now to FIG. 9, a process 900 for determining a subplant rankfor each subplant included in a central using historical subplantallocations is shown, according to some embodiments. In general, theprocess 900 can be performed by allocation rank generator 504 togenerate a subplant rank for each subplant included in a central plantby analyzing historical subplant allocations for each subplantdetermined by a previously performed high level optimization process(e.g., the high level optimization process performed by high leveloptimizer 440), according to some embodiments. In some embodiments, thehistorical subplant allocations is analyzed to determine the time stepsat which each subplant was historically loaded (e.g., allocated a load),determine the historical amount of load allocated to each subplant at aparticular previous time step, and use the historical amount of loadallocated to a particular subplant at a particular previous time step incomparison to the historical amount of load allocated to each othersubplant at the particular previous time step. In some such embodiments,the comparison of subplant load allocation data is used to determine anorder in which each subplant is allocated a load at each time step inthe prediction window. For example, the historical subplant allocationdata for two chiller subplants may include that the first chillersubplant was allocated, at a particular previous time step, a load of500 tons while the second chiller subplant was allocated, at theparticular previous time step, a load of 250 tons. The allocation of alarger load to the first chiller subplant may indicate that the firstchiller subplant receives a subplant rank (e.g., rank 1) less than thesecond chiller subplant (i.e., rank 2).

In some embodiments, the subplant ranks determined by performing process900 are used to compare and/or verify the subplant ranks generated usingthe process 700. For example, the process 900 may be performed byallocation rank generator 504 in order to further verify the subplantranks generated by the process 700 performed by rank questionnairemodule 502. In some embodiments in which the subplant ranks determinedby process 900 are not substantially the same as the subplant ranksdetermined by process 700, a user selects which subplant ranks are to beassigned (i.e., subplant ranks determined by process 900 or subplantranks determined by process 700). In further embodiments, the subplantranks generated by performing process 900 can be edited, altered, orotherwise changed by a user in order to customize the subplant ranks.

Process 900 is shown to include receiving historical subplantallocations for each subplant included in a central plant (step 902),according to some embodiments. In some embodiments, the historicalsubplant allocations received at step 902 includes subplant allocationsdetermined by a previously performed high level optimization process. Insome embodiments, step 902 is performed by allocation rank generator504. In some embodiments, the historical subplant allocations receivedat step 902 includes subplant load allocation amount for each subplantincluded in a central and the time step at which each subplant loadallocation amount was allocated to each subplant. In some embodiments,the historical subplant allocations received at step 902 includes datafor each previous time step over a previous prediction window. In otherembodiments, the historical subplant allocations received at step 902includes data for a single previous time step. In some embodiments, thenumber of time steps in which the subplant allocation data is includedis configurable based on user preference.

Process 900 is shown to involve analyzing the historical subplantallocations to determine operational data of the subplants associatedwith the historical subplant allocations (step 904), according to someembodiments. In some embodiments, step 904 involves comparing historicalsubplant allocations for each subplant at a particular time step inorder to determine an operational preference between two or moresubplants at the particular time step. In some embodiments, step 904involves analyzing historical subplant allocations for each time stepincluded in a prediction window. In some embodiments, step 904 involvesdetermining that one or more particular subplants are not allocated atone or more particular time steps. In some such embodiments, step 904involves determining that the one or more particular subplants do notreceive a subplant rank at the one or more particular time steps.

Process 900 is shown to involve determining a subplant rank for eachsubplant included in a central plant based on the operational data (step906), according to some embodiments. In some embodiments, step 906involves determining subplant ranks for each subplant based on the orderof operation preferences determined by comparing the subplantallocations for each subplant. For example, a determined order ofoperation preference based on analyzing operational may include a firstchiller subplant is loaded up before a second chiller subplant. As aresult, the first chiller subplant may be assigned “rank 1” while thesecond chiller subplant may be assigned “rank 2.”

Process 900 is shown to involve transmitting the subplant ranks to ahigh level optimization process (step 908), according to someembodiments. In some embodiments, step 908 involves transmitting thesubplant ranks to high level optimizer 440 for use in a high leveloptimization process to determine subplant load allocations for eachtime step in the prediction horizon based on the subplant ranks,according to some embodiments.

Determining Subplant Ranks Based on Models

Referring now to FIG. 10, a block diagram illustrating the AI rankgenerator 506 in greater detail is shown, according to some embodiments.AI rank generator 506 is shown to include a model generator 1002,according to some embodiments. In some embodiments, model generator 1002is shown to include a neural network 1004 configured to generate aneural network model for subplant allocations based on buildingenvironment data and/or central plant that is provided to neural network1004. In some embodiments, neural network 1004 receives buildingenvironment data including season (e.g., time of year), relativehumidities of one or more spaces RH, time of day, load consumed by thecentral plant, and a temperature measurement of one or more spaces T.The building environment data can also include other forms of data suchas building air pressure and occupancy, according to some embodiments.In some embodiments, the building environment data provided to neuralnetwork 1004 is entered via user device 503. In some embodiments, thebuilding environment data provided to neural network 1004 is time seriesdata. If the building environment data is time series data, neuralnetwork 1004 may be able to better model subplant allocations based ontime-dependent information. For example, based on time series data,neural network 1004 may determine that a larger chiller subplantallocation is generally present mid-day than at night (e.g., due to thesun, due to more occupants in a building, etc.). It should be consideredthat the building environment data provided to neural network 1004 inFIG. 10 is shown as an example of some building data that can beprovided to neural network 1004. In some embodiments, the buildingenvironment data provided to neural network 1004 includes more or lessinformation than is shown in FIG. 10. For example, neural network 1004can receive any sensor or user input information that is relevant tobuilding environment data.

Model generator 1002 is shown to provide the generated neural networkmodel to target asset allocator 1008 for use in generating adjustedsubplant load allocations, according to some embodiments. The generatedneural network model provided by neural network 1004 may not incorporatehigh level constraints when determining a subplant load allocation. Highlevel constraints, herein referred to as subplant constraints, caninclude minimum turndown (MTD) values of each subplant, maximum capacity(CAP) of each subplant to produce a resource, etc. that define one ormore limits for the operation and/or capability of each subplant toproduce a resource, according to some embodiments. The target assetallocator 1008 is shown to receive the subplant constraints for use withthe generated neural network provided by neural network 1004 in order todetermine adjusted subplant allocations, according to some embodiments.In some embodiments, the high level constraints are transmitted totarget asset allocator 1008 from devices 505. In some embodiments,devices 505 includes one or more subplants controlled by central plantcontroller 410. The adjusted subplant allocations determined by targetasset allocator 1008 adhere to the limitations defined by the subplantconstraints. For example, a chiller subplant with an MTD value of 200tons and CAP of 500 tons may be provided an adjusted subplant allocationof 300 tons. In some embodiments, the adjusted subplant allocationsdetermined by target asset allocator 1008 are provided to low leveloptimizer 450 for use in determining device allocation for one or moredevices included in each subplant. In some such embodiments, controlsignals are generated to operate the one or more devices included ineach subplant based on the device allocation and/or the adjustedsubplant allocations determined by target asset allocator 1008.

Target asset allocator 1008 is shown to provide the adjusted subplantload allocations to model rank generator 1010 for use in determining asubplant rank for each subplant included in the central plant, accordingto some embodiments. In some embodiments, the subplant rank for eachsubplant is determined by model rank generator 1010 based on the orderof operation preferences determined by comparing the adjusted subplantallocations for each subplant. For example, a determined order ofoperation preference based on the adjusted subplant allocations mayindicate that a first chiller subplant is loaded up before a secondchiller subplant. As a result, the first chiller subplant may beassigned “rank 1” while the second chiller subplant may be assigned“rank 2.” Model rank generator 1010 is shown to output the subplantranks to high level optimizer 440 at for use in a high leveloptimization process to determine subplant load allocations for eachtime step in the prediction horizon based on the subplant ranksdetermined by model rank generator 1010, according to some embodiments.

Referring now to FIG. 11, an unadjusted allocation diagram 1100representing the subplant load allocation values as can be generated asan output of the neural network model generated by model generator 1002is shown, according to some embodiments. The unadjusted allocationdiagram 1100 represents a scenario in which subplant constraints (e.g.,MTD value, CAP, etc.) is not factored into determining subplantallocations. Unadjusted allocation diagram 1100 is shown to includesubplant allocations to chiller subplant A 1102, chiller subplant B1104, chiller subplant C 1106, and chiller subplant D 1108, according tosome embodiments. Chiller subplant A 1102, chiller subplant B 1104,chiller subplant C 1106, and chiller subplant D 1108 are operable toprovide chilled water (CHW) load to a building CHW load 1110. BuildingCHW load 1110 is shown to consume 950 tons of CHW. Based on the subplantallocation values as determined by the neural network model generated bymodel generator 1002, chiller subplant A 1102 may be allocated a load of305 tons, chiller subplant B 1104 may be allocated a load of 235 tons,chiller subplant C 1106 may be allocated a load of 250 tons, and chillersubplant D 1108 may be allocated a load of 84 tons.

Each chiller subplant A 1102-chiller subplant D 1108 is shown to includeconstraints MTD of 100 tons and CAP of 300 tons such that an operableregion of each subplant is 100 tons-300 tons, according to someembodiments. The subplant allocation outputs of the neural network modelgenerated by model generator 1002 do not incorporate these subplantconstraints as represented by unadjusted allocation diagram 1100. As aresult, the neural network model may provide allocations to thesubplants outside of the operable region of 100-300 tons. Chillersubplant A 1102 is shown to be allocated a load of 305 tons (i.e.,greater than the 300 capacity value) and chiller subplant D 1108 isshown to be allocated a load of 84 tons (i.e., less than the 100 MTDvalue). The sum 1112 of the load provided to building CHW load 1110 is874 tons. As previously understood, building CHW load 1110 may require950 tons and the sum 1112 being 874 tons is less than the load requiredby the building.

Referring now to FIG. 12, an adjusted allocation diagram 1200 is shownrepresenting subplant load allocation values as can be generated bytarget asset allocator 1008 using the neural network model generated bymodel generator 1002 and subplant constraints, according to someembodiments. The adjusted allocation diagram 1200 is shown to includesimilar chiller subplant A 1102, chiller subplant B 1104, chillersubplant C 1106, and chiller subplant D 1108 operating to providechilled water (CHW) load to a similar building CHW load 1110. Aspreviously described, the target asset allocator 1008 is configured toincorporate subplant constraints to determine subplant load allocationvalues that are within the operable region of each subplant.

Each chiller subplant A 1102-chiller subplant C 1108 receives anadjusted subplant allocation, determined by target asset allocator 1008,that adheres to each subplant constraint. Chiller subplant A 1102 isallocated a load of 300 tons, chiller subplant B 1104 is allocated aload of 250 tons, chiller subplant C 1106 is allocated a load of 300tons, and chiller subplant D 1108 is allocated a load of 100 tons. Thesubplant allocations adhere to the subplant constraints of each chillersubplant and, in addition, satisfy the building CHW load of 950(represented by the sum of allocations 1212).

Referring now to FIG. 13, a process 1300 for generating a neural networkmodel and using the generated neural network model to generate subplantranks for each subplant in a central plant is shown, according to someembodiments. The process 1300 can be performed by AI rank generator 506and components included therein, according to some embodiments. Process1300 can be continuously and/or occasionally performed to updatesubplant ranks. For example, process 1300 may be performed every hour toupdate subplant ranks. In some embodiments, process 1300 can beperformed for every time in a prediction window.

Process 1300 is shown to include receiving building environmental dataand central plant load data (step 1302). The building environmental datareceived in step 1302 can include, for example, season (e.g., time ofyear), relative humidities of one or more spaces, time of day, totalload consumed by the central plant, and a temperature measurements ofone or more spaces. The received building environmental data may beprovided by building devices, a thermostat, external services, userdevices (e.g., smartphones, personal computers, etc.) or any otherdevice/service capable of providing information pertinent to generatesubplant load allocations. In some embodiments, step 1302 is performedby model generator 1002.

Process 1300 is shown to include generating a model (e.g., trainedneural network model) for subplant load allocation values with respectbuilding environmental data and central plant data (step 1304),according to some embodiments. The generated model can allow forsubplant load allocations to be determined provided buildingenvironmental data and central plant data, etc., that can affect a load(e.g., chilled water load, hot water load, etc.) consumed by a building.In some embodiments, step 1304 is performed by model generator 1002.

Process 1300 is shown to include receiving subplant constraints for eachsubplant included in a central plant (step 1306), according to someembodiments. The received subplant constraints in step 1306 can include,for example, minimum turndown value of each subplant, maximum capacityof each subplant, etc. The received subplant constraints may be providedby each subplant, from a database storing subplant constraint data (notshown), a user device (e.g., smartphones, personal computers, etc.), orany other device capable of providing information relating to subplantconstraints of each subplant included in the central plant. In someembodiments, step 1306 is performed by target asset allocator 1008.

Process 1300 is shown to include using the generated model and thesubplant constraints to generate subplant allocations (step 1308),according to some embodiments. In some embodiments, the subplantconstraints used in step 1308 define an operable range in which eachsubplant can feasibly operate (e.g., without causing mechanicalfailures, without operating outside of an efficiency threshold, etc.).For example, the subplant constraints may include a minimum turndown(MTD) value and a capacity value for each subplant. The MTD value maydefine a minimum subplant allocation that a particular subplant canoperate at while the capacity value may define a maximum amount of aresource that the particular subplant can produce. The feasibleoperation range may be defined as subplant allocation values rangingbetween the MTD value and the capacity value. The subplant allocationsgenerated in step 1308 using the generated model can be adjusted toabide by such subplant constraints, according to some embodiments. Insome embodiments, step 1308 is performed by target asset allocator 1008.

Process 1300 is shown to include using the subplant allocations togenerate subplant ranks (step 1310), according to some embodiments. Insome embodiments, the subplant rank for each subplant is determinedbased on the order of operation preferences determined by comparing thesubplant load allocation generated for each subplant in step 1308. Forexample, a determined order of operation preference based on thesubplant load allocation may indicate a first chiller subplant is loadedup before a second chiller subplant. As a result, the first chillersubplant may be assigned “rank 1” while the second chiller subplant maybe assigned “rank 2.” In some embodiments, step 1310 is performed bymodel rank generator 1010. The subplant ranks determined in step 1310are transmitted to high level optimizer 440 at step 1312 for use in ahigh level optimization process to determine subplant load allocationsfor each time step in the prediction horizon based on the subplant ranksdetermined in step 1310, according to some embodiments.

CONFIGURATION OF EXEMPLARY EMBODIMENTS

The construction and arrangement of the systems and methods as shown inthe various exemplary embodiments are illustrative only. Although only afew embodiments have been described in detail in this disclosure, manymodifications are possible (e.g., variations in sizes, dimensions,structures, shapes and proportions of the various elements, values ofparameters, mounting arrangements, use of materials, colors,orientations, etc.). For example, the position of elements may bereversed or otherwise varied and the nature or number of discreteelements or positions may be altered or varied. Accordingly, all suchmodifications are intended to be included within the scope of thepresent disclosure. The order or sequence of any process or method stepsmay be varied or re-sequenced according to alternative embodiments.Other substitutions, modifications, changes, and omissions may be madein the design, operating conditions and arrangement of the exemplaryembodiments without departing from the scope of the present disclosure.

The present disclosure contemplates methods, systems and programproducts on any machine-readable media for accomplishing variousoperations. The embodiments of the present disclosure may be implementedusing existing computer processors, or by a special purpose computerprocessor for an appropriate system, incorporated for this or anotherpurpose, or by a hardwired system. Embodiments within the scope of thepresent disclosure include program products comprising machine-readablemedia for carrying or having machine-executable instructions or datastructures stored thereon. Such machine-readable media can be anyavailable media that can be accessed by a general purpose or specialpurpose computer or other machine with a processor. By way of example,such machine-readable media can include RAM, ROM, EPROM, EEPROM, CD-ROMor other optical disk storage, magnetic disk storage or other magneticstorage devices, or any other medium which can be used to carry or storedesired program code in the form of machine-executable instructions ordata structures and which can be accessed by a general purpose orspecial purpose computer or other machine with a processor. Combinationsof the above are also included within the scope of machine-readablemedia. Machine-executable instructions include, for example,instructions and data which cause a general purpose computer, specialpurpose computer, or special purpose processing machines to perform acertain function or group of functions.

Although the figures show a specific order of method steps, the order ofthe steps may differ from what is depicted. Also two or more steps maybe performed concurrently or with partial concurrence. Such variationwill depend on the software and hardware systems chosen and on designerchoice. All such variations are within the scope of the disclosure.Likewise, software implementations could be accomplished with standardprogramming techniques with rule based logic and other logic toaccomplish the various connection steps, processing steps, comparisonsteps and decision steps.

What is claimed is:
 1. A controller for a central plant having aplurality of subplants that operate to produce one or more resourcesconsumed by a building, the controller comprising: a processing circuitcomprising a processor and memory storing instructions executed by theprocessor, wherein the memory comprises: an offline rank generatorconfigured to receive historical subplant allocation data and generate aplurality of subplant ranks based on the historical subplant allocationdata, wherein each of the plurality of subplant ranks is associated withone of the plurality of subplants and defines a priority of eachsubplant with respect to production of a resource relative to othersubplants that produce the resource; and a high level optimizerconfigured to use the plurality of subplant ranks associated with eachof the plurality of subplants to determine resource allocation of theplurality of subplants according to the plurality of subplant ranks; andwherein the processing circuit is configured to operate the plurality ofsubplants according to the resource allocation.
 2. The controller ofclaim 1, wherein the offline rank generator comprises an allocation rankgenerator configured to receive the historical subplant allocation datafrom the high level optimizer and determine, based on the historicalsubplant allocation data, the plurality of subplant ranks.
 3. Thecontroller of claim 1, wherein the offline rank generator comprises anAI rank generator configured to receive the historical subplantallocation data from the high level optimizer and a plurality ofbuilding data to generate a model using the historical subplantallocation data and the plurality of building data.
 4. The controller ofclaim 3, wherein the model is used to generate a plurality of futuresubplant load allocations for use in determining the plurality ofsubplant ranks.
 5. The controller of claim 4, wherein the modelgenerated by the AI rank generator is a neural network.
 6. Thecontroller of claim 1, wherein the offline rank generator comprises arank questionnaire module configured to generate a series of questionsto a user, wherein the series of questions is associated with aplurality of operational characteristics of the central plant.
 7. Thecontroller of claim 6, wherein the rank questionnaire module isconfigured to receive at least one user response from the user to theseries of questions, wherein the at least one user response is used todetermine the plurality of subplant ranks.
 8. A method of controlling acentral plant having a plurality of subplants that operate to produceone or more resources consumed by a building, comprising: determining aplurality of subplant ranks based on operational characteristics of thecentral plant, wherein each of the plurality of subplant ranks isassociated with one of the plurality of subplants and defines a priorityof each subplant with respect to production of a resource relative toother subplants that produce the resource; determining resourceallocation of the plurality of subplants according to the plurality ofsubplant ranks; and operating the plurality of subplants according tothe resource allocation.
 9. The method of claim 8, wherein determiningthe plurality of subplant ranks based on operational data of the centralplant further comprises: obtaining user data in response to a series ofquestions, wherein the user data defines the operational characteristicsof the central plant; and determining the plurality of subplant ranksbased on the user data.
 10. The method of claim 8, wherein determiningthe plurality of subplant ranks based on operational data of the centralplant further comprises: obtaining a plurality of historical subplantload allocation data, wherein the plurality of historical subplant loadallocation data defines a historical resource allocation of theplurality of subplants from a previous prediction window; anddetermining the plurality of subplant ranks based on the plurality ofhistorical subplant load allocation data.
 11. The method of claim 8,wherein determining the plurality of subplant ranks based on operationaldata of the central plant further comprises: obtaining a plurality ofhistorical subplant load allocation data, wherein the plurality ofhistorical subplant load allocation data defines a historical resourceallocation of the plurality of subplants from a previous predictionwindow; obtaining a plurality of building data; generating a model basedon the plurality of historical subplant load allocation data and theplurality of building data; and determining the plurality of subplantranks based on an output of the model.
 12. The method of claim 11,wherein generating the model based on the plurality of historicalsubplant load allocation data and the plurality of building datainvolves generating a neural network.
 13. A controller for a centralplant having a plurality of subplants that operate to produce one ormore resources consumed by a building, the controller comprising: aprocessing circuit comprising a processor and memory storinginstructions executed by the processor, wherein the memory comprises: anoffline rank generator configured to receive user data and generate aplurality of subplant ranks based on the user data, wherein each of theplurality of subplant ranks is associated with one of the plurality ofsubplants and defines a priority of each subplant with respect toproduction of a resource relative to other subplants that produce theresource; and a high level optimizer configured to use the plurality ofsubplant ranks associated with each of the plurality of subplants todetermine resource allocation of the plurality of subplants according tothe plurality of subplant ranks; and wherein the processing circuit isconfigured to operate the plurality of subplants according to theresource allocation.
 14. The controller of claim 13, wherein the offlinerank generator comprises a rank questionnaire module configured togenerate a series of questions to a user, wherein the series ofquestions is associated with a plurality of operational characteristicsof the central plant.
 15. The controller of claim 14, wherein the rankquestionnaire module is configured to receive at least one user responsefrom the user to the series of questions, wherein the at least one userresponse is used to determine the plurality of operationalcharacteristics of the central plant.
 16. The controller of claim 15,wherein the at least one user response to the series of questions isused to determine the plurality of subplant ranks.
 17. The controller ofclaim 13, wherein the offline rank generator is configured to receivehistorical subplant allocation data and generate the plurality ofsubplant ranks based on the historical subplant allocation data.
 18. Thecontroller of claim 17, wherein the offline rank generator comprises anallocation rank generator configured to receive the historical subplantallocation data from the high level optimizer and determine, based onthe historical subplant allocation data, the plurality of subplantranks.
 19. The controller of claim 17, wherein the offline rankgenerator comprises an AI rank generator configured to receive thehistorical subplant allocation data from the high level optimizer and aplurality of building data to generate a model using the historicalsubplant allocation data and the plurality of building data.
 20. Thecontroller of claim 19, wherein the model is used to generate aplurality of future subplant load allocations for use in determining theplurality of subplant ranks.